"""
管理员相关接口
"""

from db import db_handler
from lib import common


logger = common.get_logger("admin")


# 冻结账户接口
def freeze_account_interface(account_name):

    user_data = db_handler.select_data(account_name)

    # 判断输入的用户名是否存在
    if user_data is None:
        return False, "用户不存在！"

    # 判断该用户是否为管理员
    if user_data["is_admin"]:
        return False, "管理员账户无法冻结！"

    # 判断用户是否已经被冻结
    if user_data["locked"]:
        user_data["locked"] = False
        db_handler.save_data(user_data)

        logger.warning(f"用户{account_name}被解冻成功！")

        return True, "解冻成功！"
    else:
        user_data["locked"] = True
        db_handler.save_data(user_data)

        logger.warning(f"用户{account_name}被冻结成功！")

        return True, "冻结成功！"
